Our workshop employs a problem-based approach to introduce participants to kdb+ and q. Each section begins with a problem statement, followed by exploring a conceptual solution using visual aids such as pictures and diagrams. We then transition from this abstract setting to implementing the solution in q, aiming to show how closely the q implementation mirrors the conceptual solution. The problems are organized sequentially to introduce new data structures and concepts step-by-step, one at a time, ensuring participants can digest each concept thoroughly. By embracing this methodology, we aim to bridge theory with practice, providing an interactive framework where every participant can derive practical insights and learning.
Participants will explore q, a language known for its concise array notation and efficiency with large datasets. Building on their knowledge of functional programming, they will learn to apply these concepts in combination with q's vector thinking to solve complex problems. Through practical exercises, attendees will gain proficiency in q's syntax and its applications for data manipulation and analysis. This workshop aims to equip participants with foundational q skills, fostering a new perspective on problem-solving and enhancing their ability to utilize q effectively in projects and data tasks.
Participants should have a q REPL (Read-Eval-Print Loop) installed and ready to use. For installation instructions, please visit q Installation Guide.
This 1.5-hour (with no breaks) workshop begins with an overview of the kdb+/q ecosystem, covering main use cases and the typical tick architecture. The session then guides participants through a series of short problems to introduce new q concepts gradually. Attendees will engage in practical challenges to apply theoretical knowledge in data manipulation and functional programming principles. The workshop emphasizes continuous learning and hands-on practice, providing an interactive environment for mastering q and kdb+.
Functional Programmers, Software Developers, Data Engineers & Data Scientists